<?php
if (!defined('IS_INITPHP')) exit('Access Denied!');   
/*********************************************************************************
 * InitPHP 3.8.2 国产PHP开发框架   扩展类库-文件上传
 *-------------------------------------------------------------------------------
 * 版权所有: CopyRight By initphp.com
 * 您可以自由使用该源码，但是在使用过程中，请保留作者信息。尊重他人劳动成果就是尊重自己
 *-------------------------------------------------------------------------------
 * Author:zhuli Dtime:2014-11-25 
***********************************************************************************/
require_once 'upload.init.php';
class fileuploadInit  extends uploadInit{

	private $error_message = array(
							1 =>'上传失败'        , 
							2 =>'不是通过HTTP POST方法上传', 
							3 =>'不允许的上传类型' , 
							4 =>'上传文件超过服务器上传限制'  , 
							5 =>'上传文件超过服务器上传限制' , 
							6 =>'上传文件超过表达最大上传限制' , 
							7 =>'只上传了一半文件' , 
							8 =>'上传的临时目录出错', 
							9 =>'新的文件名，命名不合法' ,  
							10=>'上传的内容不合法' 
							); 	
	/**
	 * 上传图片 主函数
	 * @param $fieldname    上传文件表单名
	 * @param $params  参数配置
	 * @return array
	 */
	public function up($fieldname, $path,$filename,$allow_type=array(),$max_size = 1024) {
		$params = array('maxSize'=>$max_size,'allowFileType'=>$allow_type);
		$upload = $this->upload($fieldname,$filename,$path,$params);
		$temp = array('error'=>0,'msg'=>'','file'=>array());
		if($upload < 0 ){
			$temp['error'] = $upload;
			$temp['msg']   = $this->error_message[abs($upload)];
		}else{
			$temp['msg']   = '上传成功';
			$temp['file']['filename'] =  stripslashes( str_replace($this->escapeDir(WWW_PATH), '', $upload['source']) );
			$InitPHP_conf = InitPHP::getConfig();
			$temp['file']['url']  = $InitPHP_conf['url'].$temp['file']['filename'];
		} 
		return $temp;
	}
	
    /**
     * 删除图片
     * @param $path 路径 或者轮径数组
     */
    public  function del($path)
    {
        if(is_array($path) ){
            foreach($path as $p){
                if(!file_exists(realpath($p))){
                    continue;
                }
                 @unlink( realpath($p)) ;
            }
            return true;
        }else{

            if(!file_exists(realpath($path))){
                return true;
            }
             return @unlink(realpath($path)) ;            
        }
    }


}
